/*
 * Description: 进程帮助类
 */
#include "common_header.h"
#include <Tlhelp32.h>
#include <Winternl.h>
#include <vector>

class ProcUtil {
public:
    static void GetProcessIdByProcessName(const std::string& processName, std::vector<DWORD>& tokenVec);
    static bool GetProcessList(std::vector<PROCESSENTRY32>& lst);
    static bool IsProcessExists(const std::string& processName);
    static std::string GetProcessCommandLine(HANDLE processHandle);
private:
    static std::wstring GetProcessCommandLineParam(HANDLE processHandle, const RTL_USER_PROCESS_PARAMETERS& para);
    static std::wstring GetCommandLineParam(const std::wstring& commandLine);
};

